/**
 * 系统初始化的接口
 * 来自a-initial
 */
module.exports = {
	// start: { // 该对象注释掉，是因为前端不可能用得上
	// 	text: '项目启动',
	// 	description: '根据启动信息，获取该项目必要的信息设置',
	// 	nologin: 2,
	// 	name: 'a-initial',
	// 	detail: 'start',
		
	// 	params: {
	// 		code: '', // 项目代码
	// 		user_id: '', // 用户id
	// 		wechat_openid: '', // 微信openid。前端暂时不支持
	// 		Authorization: '', // token
	// 		api: '', // api的更新值
	// 		basedata: '', // basedata的更新值
	// 		fixcolumns: '', // fixcolumns的更新值
	// 		theme: '', // 主题的更新值
	// 		language: '', // 多语言的更新值
	// 		Development: '', // 是否开发模式
	// 		pageKey: '', // 记录启动页
	// 		isTest: '', // 代码设置中的测试环境
	// 		domain: '', // H5状态下记录启动域名，可以判断真正的isTest
	// 	},
		
	// 	return: {
	// 		api: {}, // 最新的api数据
	// 		basedata: {}, // 最新的basedata
	// 		fixcolumns: {}, // 最新的fixcolumns
	// 		theme: [], // 最新的主题
	// 		language: {}, // 最新的多语言
	// 		data: {}, // 项目信息
	// 		user: {}, // 用户信息
	// 		isTest: '', // 是否测试环境
	// 	}
	// },
	
	login: {
		text: '用户登录',
		description: '用户id、账号+密码、手机号码+验证码。可以在start方法是调用，也可在需要的地方调用',
		nologin: 1,
		name: 'a-initial',
		detail: 'login',
		params: {
			user_id: '', // 用户id
			account: '', // 账号
			password: '', // 密码
			phone: '', // 手机号
			uuid: '', // 验证码的uuid
			code: '', // 验证码
		},
		return: {
			token: '', // 登录成功后返回的token
			data: {}, // 用户信息
		}
	},
	
	verify: {
		text: '发送手机验证码',
		nologin: 2,
		name: 'a-initial',
		detail: 'verify',
		
		params: {
			phone: '手机号',
			templateId: '', // 模版id
		},
		
		return: {
			code: '', // 验证码。仅开发环境下才返回
			countdown: '', // 最长倒计时
			phone: '', // 手机号
			uuid: '', // 手机验证码的uuid
		}
	},
	
	check: {
		text: '验证手机验证码',
		nologin: 2,
		name: 'a-initial',
		detail: 'check',
		
		params: {
			code: '', // 输入的验证码
			phone: '', // 手机号
			uuid: '', // 手机验证码的uuid
		},
		
		return: undefined, // 通过与不通过
	},
	
	getUserInfo: {
		text: '获取用户信息',

		name: 'a-initial',
		detail: 'getUserInfo',
		params: { // 限定这三种参数获取用户信息，其它参数无效
			_id: '',
			doc: '',
			user_id: '',
			name: '', // 用户数据库名称，默认a-user
		},
		return: {
			data: {}, // 用户信息
		}
	},
	
	showUserInfo: {
		text: '展示用户信息',
		
		name: 'a-initial',
		detail: 'showUserInfo',
		
		params: {
			sence: '', // 显示的场景
			_id: '', // 用户id。默认使用当前的用户id
		},
		
		return: {
			user: {}, // 用户信息
			modelOptions: [], modelValue: {}, modelRules: {} // 显示的表单信息
		}
	},
	
	checkUnique: {
		text: '检查用户名是否唯一',
		
		name: 'a-initial',
		detail: 'checkUnique',
		
		params: {
			key: '', // 验证的字段名
			value: '', // 验证的值
			name: '', // 用户数据库名称，默认a-user
		},
		
		return: {data: true}, // 是否唯一
	},
	
	updateUserInfo: {
		text: '更新用户信息',
		
		name: 'a-initial',
		detail: 'updateUserInfo',
		
		params: { // 用户信息可通过解析token获取
			_id: '',
			doc: '',
			user_id: '',
			name: '', // 用户数据库名称，默认a-user
			data: {}, // 要更新的数据
		},
		
		return: '', // 成功与否
	},
	
	logout: { // 退出登录目前没有做任何有效的处理
		text: '退出登录',
		nologin: 2, // 退出登录不需要登录！
		name: 'a-initial',
		detail: 'logout',
		
		return: '', // 退出成功后暂时没有任何信息返回
	},
	
	// fixcolumns: { // 该接口在启动时调用，其它无调用场景，不用向api注册
	// 	text: '获取字段的固定信息',
	// 	nologin: 2,
	// 	name: 'b-fixcolumns',
		
	// 	return: {}, // 字段的固定信息
	// },
	
	language: {
		text: '获取多语言信息',
		nologin: 2,
		name: 'b-language',
		params: {
			type: '目标语言',
			date: '更新日期'
		},
		
		return: {
			type: '', // 目标语言
			date: '', // 更新日期
			data: {} ,// 多语言信息
			list: [], // 多语言列表
		}, // 多语言
	},
	
	carnumber: {
		text: '获取车牌数据',
		nologin: 2,
		name: 'carnumber',
		return: [], // 返回一大区为第一维元素的列表
	},
	
	color: {
		text: '获取颜色数据',
		nologin: 2,
		name: 'color',
		return: {}, // 返回颜色值。key为颜色名称，value为颜色值
	},
	
	upload: {
		text: '上传文件',
		nologin: 2,
		name: 'a-upload',
		params: {
			url: '文件地址',
			name: '', // 文件名称。不含后缀
			fileMediatype: '', // 指定的文件类型。默认是图片
			used: '', // 文件用途 0：默认；1：素材；2：AI作图,
			space: '', // 当前云服务空间
			target: '', // 归属项目
			partya: '', // 归属甲方
		},
		return: {} // file数据库中该文件的详细信息
	},
}